<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <h1>Promise-API-then方法的使用</h1>
    <script>
        /*
        Promise.prototype.then方法: (onResolved, onRejected) => {}
        (1) onFulfilled函数: 成功的回调函数  (value) => {}
        (2) onRejected函数: 失败的回调函数 (reason) => {}
        说明: 指定用于得到成功value的成功回调和用于得到失败reason的失败回调
            返回一个新的promise对象
        */

        const p = new Promise((resolve, reject) => {
            console.log(11111);
            //调用resolve回调函数,此函数完成将promise对象中的状态有 pending -> fulfilled
            // 异步激发then方法中第一个onFulfilled回调函数的执行。
           //resolve("ok");

           //调用reject回调函数,此函数完成将promise对象中的状态有 pending -> rejected
            // 异步激发then方法中第二个onRejected回调函数参数的执行。
           //reject("error");

           // 当前程序报错: 会相当于调用reject（）
           throw new Error("人为报错！");
        });
        console.log(22222);
        console.log(p);
        // 使用then,里面的回调参数都是为异步操作
        p.then(value => {
            console.log("成功！"+value);
        }, reason => {
            console.log("失败！"+reason);
        });
        console.log(3333);
    </script>
</body>
</html>